package com.touhou.youmu.utils

import java.io.File
import java.io.FileOutputStream
import java.text.SimpleDateFormat
import java.util.*

object FileUtils {

    @Throws(Exception::class)
    fun uploadFile(file: ByteArray, filePath: String, fileName: String) {
        val targetFile = File(filePath)
        if (!targetFile.exists()) {
            targetFile.mkdirs()
        }
        val out = FileOutputStream(filePath + fileName)
        out.write(file)
        out.flush()
        out.close()
    }

    /**
     * 自动生成32位的UUid，对应数据库的主键id进行插入用。
     * @return
     */
    fun getUUID(): String {
        /*UUID uuid = UUID.randomUUID();
        String str = uuid.toString();
        // 去掉"-"符号
        String temp = str.substring(0, 8) + str.substring(9, 13)
                + str.substring(14, 18) + str.substring(19, 23)
                + str.substring(24);
        return temp;*/

        return UUID.randomUUID().toString().replace("-", "")
    }

    /**
     * 随机生成文件名：当前年月日时分秒+五位随机数
     */
    fun getRandomFileName(): String {

        val simpleDateFormat: SimpleDateFormat = SimpleDateFormat("yyyyMMdd")

        val date = Date()

        val str = simpleDateFormat.format(date)

        val random = Random()

        val rannum = (random.nextDouble() * (99999 - 10000 + 1)).toInt() + 10000// 获取5位随机数

        return rannum.toString() + str// 当前时间
    }
}